home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 8 / QRZ Ham Radio Callsign Database - Volume 8.iso / mac / files / t_sys5 / 92052tar.gz / 920528.tar / udpcmd.c < prev    next >
C/C++ Source or Header  |  1992-05-14  |  1KB  |  70 lines

  1. /* @(#) $Header: udpcmd.c,v 1.7 92/05/14 13:20:39 deyke Exp $ */
  2.  
  3. /* UDP-related user commands
  4.  * Copyright 1991 Phil Karn, KA9Q
  5.  */
  6. #include <stdio.h>
  7. #include "global.h"
  8. #include "mbuf.h"
  9. #include "netuser.h"
  10. #include "udp.h"
  11. #include "internet.h"
  12. #include "cmdparse.h"
  13. #include "commands.h"
  14.  
  15. static int doudpstat __ARGS((int argc,char *argv[],void *p));
  16.  
  17. static struct cmds Udpcmds[] = {
  18.     "status",       doudpstat,      0, 0,   NULLCHAR,
  19.     NULLCHAR,
  20. };
  21. int
  22. doudp(argc,argv,p)
  23. int argc;
  24. char *argv[];
  25. void *p;
  26. {
  27.     return subcmd(Udpcmds,argc,argv,p);
  28. }
  29. int
  30. st_udp(udp,n)
  31. struct udp_cb *udp;
  32. int n;
  33. {
  34.     if(n == 0)
  35.         printf("    &UCB Rcv-Q  Local socket\n");
  36.  
  37.     return printf("%8lx%6u  %s\n",ptol(udp),udp->rcvcnt,pinet_udp(&udp->socket));
  38. }
  39.  
  40. /* Dump UDP statistics and control blocks */
  41. static int
  42. doudpstat(argc,argv,p)
  43. int argc;
  44. char *argv[];
  45. void *p;
  46. {
  47.     register struct udp_cb *udp;
  48.     register int i;
  49.  
  50.     if(!Shortstatus){
  51.     for(i=1;i<=NUMUDPMIB;i++){
  52.         printf("(%2u)%-20s%10lu",i,
  53.          Udp_mib[i].name,Udp_mib[i].value.integer);
  54.         if(i % 2)
  55.             printf("     ");
  56.         else
  57.             printf("\n");
  58.     }
  59.     if((i % 2) == 0)
  60.         printf("\n");
  61.     }
  62.  
  63.     printf("    &UCB Rcv-Q  Local socket\n");
  64.     for(udp = Udps;udp != NULLUDP; udp = udp->next){
  65.         if(st_udp(udp,1) == EOF)
  66.             return 0;
  67.     }
  68.     return 0;
  69. }
  70.